/*
 *  Created on: 2011
 */

#ifndef STORE_H_
#define STORE_H_

#include "DataTypes.h"

#include <deque>
#include <pthread.h>
#include <string>

class Store {
public:

	static Store* create();
	static void destroy(Store** ppInstance);

	bool empty();
	void push(std :: string& rFilename);
	std :: string pop();
	UINT size();

private:

	Store();
	virtual ~Store();

	pthread_mutex_t _lock;
	std :: deque<std :: string>* _pInput;
};

#endif /* STORE_H_ */

